// import router from '@/router'
// import store from '@/store'
import axios from 'axios'
// import { Message } from 'element-ui'
// import { getToken } from './auth'
// 实例化create方法
// 定制axios的基地址和超时时间
// 基地址：项目里面大部分的接口前面的协议域端口基本一致，只有后面的相对路劲不一样
// service = axios的配置
// const service = axios.create({
//   baseURL: process.env.VUE_APP_BASE_API,
//   timeout: 5000 // request timeout 超时时间
// })

// 请求拦截器
// 做什么？在正式接口发送之前 容许我们对接口参数做一些配置
// 具体的事情：注入token，在请求头 为了大部分 需要鉴权的接口能够统一获得用户标识
// 添加请求拦截器
axios.interceptors.request.use(
  function (config) {
    // 在发送请求之前做些什么
    return config
  },
  function (error) {
    // 对请求错误做些什么
    return Promise.reject(error)
  }
)

// 响应拦截器
// 做的事？在数据返回客户端的时候做一些事情
// 具体的事情： 1.token失效 强制跳转登录 2.简化我们请求数据的访问
// 注意事项：以http决定 2xx就i执行第一个成功回调，不在200-300走第二个失败回调
// 问题 后端不已二百到三百作为失败标识，以一个自定义的succss作为标识
// 前后端的依据不一致，永远走的成功回调
// 解决思路：前端自己判断 当前接口成功还是失败，如果成功继续向下执行，
// 如果失败，手动抛出错误

// 添加响应拦截器
axios.interceptors.response.use(
  function (response) {
    // 对响应数据做点什么
    return response
  },
  function (error) {
    // 对响应错误做点什么
    return Promise.reject(error)
  }
)

export default axios
